\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage[frenchb]{babel}
\usepackage[T1]{fontenc}
\usepackage{multicol}
\usepackage{graphics}
\usepackage{fancyvrb}
\usepackage{listings}
\usepackage{verbatim}
\usepackage{color}
\usepackage{beamerthemeboxes}
 

\lstset{
basicstyle=\footnotesize,
numbers=left,
numberstyle=\normalsize,
breaklines=true,  
numbersep=7pt,
frame=single, 
}


\usetheme{Madrid}
%\usecolortheme{beaver}
\title[Explorer3D sous R]{Étude et réalisation d'une interface utilisateur 3D sous R}
\author[J.H N.L-B A.M L.R]{Julien Henry, Nicolas Lacourte-Barbadaux, Alexandre Masson, Léo Rousseau}
\institute[Orléans]{Université d'Orléans - LIFO - Matthieu Exbrayat}
\date{17 mai 2013}

\fvset{
%frame=single,
fontsize=\footnotesize , 
numbers=left,
}

\definecolor{lgray}{gray}{0.25}

\setbeamertemplate{navigation symbols}{}
%\addtobeamertemplate{footline}{ \textbf{\insertframenumber/\inserttotalframenumber}}

%\usepackage[footheight=1em]{beamerthemeboxes}

%\addfootboxtemplate{\color{black}}{\color{white}\textbf{
%    \insertframenumber/\inserttotalframenumber}}

\setcounter{tocdepth}{2}


%Présentation du groupe : Nico 1min
\begin{document}	
\begin{frame}
\titlepage
\end{frame}

\begin{frame}
\tableofcontents% options pour cacher/montrer [currentsubsection,sectionstyle=show/shaded,subsectionstyle=show/shaded/hide]
\end{frame}

%2 Presentation du projet : Nico 1:30
%    [Explorer3D]
\section{Description du domaine}
\begin{frame}{Description du domaine}
\begin{block}{Classification}
\begin{itemize}
\item Supervisée
\item Non-supervisée
\end{itemize}
\end{block}
\section{Description générale du logiciel}
\begin{block}{Le logiciel Explorer3D}
\begin{itemize}
\item Logiciel de visualisation de données
\item Doté d'une interface graphique
\item Implémentation en JAVA
\item Visualisation avec JAVA3D
\end{itemize}
\end{block}
\end{frame}

%    [Architecture]
%Léo 2 minutes
\section{Architecture du logiciel}
\begin{frame}{Architecture du logiciel 1/2}
\begin{alertblock}{Soucis rencontrés avec l'implémentation MVC}
\begin{itemize}
\item Données non-encapsulées
\item Pas d'outil englobant 
\item Les événements soulevés sont liés à la création de l'objet  
\end{itemize}
\end{alertblock}
\begin{exampleblock}{Solutions possibles}
\begin{itemize}
\item Super affectation et variables d'environnement 
\item Travail fastidieux
\item Efforts de programmation non pertinents  
\end{itemize}
\end{exampleblock}
\end{frame}
\begin{frame}{Architecture du logiciel 2/2}
\begin{block}{Solution adoptée}
\begin{itemize}

%Léo 2 minutes
\item Découpage en plusieurs parties
\begin{itemize}
\item Interface Utilisateur
\item Visualisation 3D
\item Moteur de Calcul
\end{itemize}
\item Packages utilisés
\begin{itemize}
\item RGtk2 
\item RGL
\end{itemize}

\end{itemize}
\end{block}
\end{frame}

%    [Outils(R,RGL,RGTK2)]
%Nico 1:30
\begin{frame}{Outils}
    \begin{block}{RGtk2}
    \begin{itemize}
    \item Création d'interface graphique sous R
    \item Dérivé de Gtk
    \item Interaction avec l'utilisateur
    \end{itemize}
    \end{block}

    \begin{block}{RGL}
    \begin{itemize}
    \item Outils de visualisation 3D
    \item Utilise OpenGL
    \item Affichage en 2D d'univers 3D
    \end{itemize}
    \end{block}
\end{frame}


%3 Implementation
%    [Implementer une interface RGTK2][2]
%Alex 1:30
\section{Description de quelques points techniques}
\begin{frame}{Présentation RGtk2 1/3}
\begin{block}{Structure d'une fenêtre}
\includegraphics[scale=0.5]{structureType.png}
\end{block}
\end{frame}

%Alex 1:00
\begin{frame}{Présentation RGtk2 2/3}
\begin{block}{Les widgets}
\begin{itemize}
\item Les Boutons 		
\item Les Cases à cocher 	
\item Les Labels 			
\item Les Zones de texte 	
\item Objets plus complexes
\begin{itemize}
\item Les Menus
\item Les Listes déroulantes
\item Les NoteBooks
\end{itemize}
\end{itemize}
\end{block}
\end{frame}

%Alex 1:30
\begin{frame}{Présentation RGtk2 3/3}
\begin{block}{Les événements}
gSignalConnect relie :
\begin{itemize}
\item Un objet
\item Une fonction
\item Un événement
\end{itemize}
Différents types d'événements : 
\begin{itemize}
\item Clic sur un bouton : "clicked"
\item Activation d'un sous-menu dans un menu : "activate"
\end{itemize}
\end{block}
\end{frame}

%Alex 1min
\begin{frame}{Les Difficultés de RGtk2}
\begin{alertblock}{Apprentissage}
\begin{itemize}
\item Pratiquement aucune documentation
\item Peu de codes exemples existants
\item Problématique pour la gestion des événements
\end{itemize}
\end{alertblock}

\begin{exampleblock}{Voie à suivre}
\begin{itemize}
\item Suivre des tutoriels sur Gtk
\begin{itemize}
\item Code en C
\item Adapter méthode en R
\end{itemize}
\item Chercher la fonction correspondante en R, une seule documentation : 
\item  http://rss.acs.unt.edu/Rdoc/library/RGtk2/html/
\end{itemize}
\end{exampleblock}
\end{frame}

%    [RGL][2]
%vg11k 2:00
\begin{frame}{Présentation RGL}
\begin{block}{Un moteur 3D pour R}
\begin{itemize}
\item Basé sur OpenGL et C++
\item Facile d'utilisation
\end{itemize}
\end{block}
\begin{block}{Possibilités de RGL}
\begin{itemize}
\item Interactions natives avec la scène
\item Intégration de la sélection aisée
\end{itemize}
\end{block}

\begin{block}{Limites de RGL}
\begin{itemize}
\item Les inconvénients de la sélection
\item Loupe difficile à implémenter
\item Performances
\end{itemize}
\end{block}
\end{frame}


%--DEMO--
%reste du temps de vg11k
\section{Exemples de fonctionnement}
\begin{frame}{Exemples de fonctionnement}
\begin{center}
\includegraphics[scale=0.4]{captureExplorer3D.png}

\includegraphics[scale=0.4]{captureexplorR3D.png}
\end{center}

\end{frame}

%    --Démo à voir pour la disposition--
%4 Finalisation
%    [Reponse au sujet initial]
% Nico 1:00
\section{Résultats des tests}
\begin{frame}{Résultats des tests}
\begin{block}{Ce qui est possible}
\begin{itemize}
\item Créer l'interface avec RGtk2
\item Visualiser la scène avec RGL
\item Utiliser les algorithmes d'études statistiques présents dans R
\end{itemize}
\end{block}
\begin{block}{En contrepartie}
\begin{itemize}
\item Modifications laborieuses
\item Sélection d'un unique élément : compliquée
\item Loupe de Explorer3D difficilement réalisable
\end{itemize}
\end{block}
\end{frame}



%    [Questions ?]

% Leo 1:00
\begin{frame}{}
\begin{block}{}
\centerline{Est-il possible de porter \textbf{Explorer3D} sous \textbf{R} ?}
\end{block}
\end{frame}

\end{document}


